package com.stylefeng.guns.modular.system.model;

import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import com.stylefeng.guns.core.validater.Update;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.Date;

/**
 * <p>
 * 
 * </p>
 *
 * @author stylefeng
 * @since 2018-09-13
 */
@Data
@EqualsAndHashCode(callSuper=true)
@TableName("sys_post_path")
@ApiModel(value = "系统岗位层级关系实体",description = "系统岗位层级关系实体")
public class PostPath extends Model<PostPath> {

    private static final long serialVersionUID = 1L;

    /**
     * 编号
     */
    @TableId(value = "spp_id",type= IdType.AUTO)
    @NotNull(message = "编号不能为空",groups = {Update.class})
    private Integer sppId;
    /**
     * 岗位编号
     */
    @TableField("sp_id")
    @NotNull(message = "岗位编号不能为空")
    private Integer spId;
    /**
     * 岗位全路径
     */
    @TableField("sp_path")
    @NotNull(message = "岗位全路径不能为空")
    private String spPath;
    /**
     * 所属机构
     */
    @TableField("so_id")
    @NotNull(message = "所属机构不能为空")
    private Integer soId;

    /**
     * 创建人
     */
    @TableField("create_user")
    private String createUser;
    /**
     * 创建时间
     */
    @TableField("create_time")
    private Date createTime;
    /**
     * 更新人
     */
    @TableField("update_user")
    private String updateUser;
    /***
     * 更新时间
     */
    @TableField("update_time")
    private String updateTime;




    @Override
    protected Serializable pkVal() {
        return this.sppId;
    }


}
